{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "134e7f9d",
   "metadata": {},
   "source": [
    "# Example 8: Continual Learning"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "2571d531",
   "metadata": {},
   "source": [
    "Setup: Our goal is to learn a 1D function from samples. The 1D function has 5 Gaussian peaks. Instead of presenting all samples to NN all at once, we have five phases of learning. In each phase only samples around one peak is presented to KAN. We find that KANs can do continual learning thanks to locality of splines."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "2075ef56",
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.collections.PathCollection at 0x7fab30cf6370>"
      ]
     },
     "execution_count": 1,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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+U93mePHjzOz2cxKS0s1r7s/ysrKGACvDrFlyxYGgO3fv1/xfq6//np26aWXem276KKL2H333adVVUMi1PbNmTOHXX/99X7/Lsr3x5h23+HWrVsZAK8B1YjvsKioiM2bN89r21lnncUeffRRn+V/+ctfsrPOOstr2913380mTJjg/v+bbrqJTZ8+3avMlVdeyW655RaNaq0OtW30RX5+PispKXH/v9LxiQdq2ycHI6dPn/a7T5G+w3C/v9WrVzOTycSOHDni3ibS9+eJkmBElN9g1N+mUUt5eTkqKiowbdo097bExERcdNFF2Lx5MwBg+/bt6Ojo8CozcOBAFBQUuMvwYMuWLbDZbBg/frx724QJE2Cz2RTX4+TJk/jwww8xd+7cXn9788030a9fP4wZMwYPPfSQO3syL8Jp37p16zBgwACMHDkSd911FyorK91/E+X7A7T5DgGgrq4OJpOp161Int9he3s7tm/f7uUVAKZNm+a3LVu2bOlV/sorr8S2bdvQ0dERsAzv7woIrY09kSQJDQ0NyMzM9Nre2NiIoUOHYvDgwbj22muxc+dOzeqtlHDad/755yMnJweXXXYZvvjiC6+/ifIdavH9vfLKK7j88ssxdOhQr+0ifH+hIMpvMCIS5fGkoqICAJCVleW1PSsrC9999527TEJCAjIyMnqVkT/Pg4qKCgwYMKDX9gEDBiiux9///nekpaXhhz/8odf22267DXl5ecjOzobdbsfChQuxe/durF27VpO6KyHU9l111VX40Y9+hKFDh6K8vBxPPPEELr30Umzfvh2JiYnCfH+ANt9ha2srHn30Udx6661eSa54f4dVVVVwOp0+fzv+2lJRUeGzfGdnJ6qqqpCTk+O3DO/vCgitjT354x//iKamJtx0003ubWeddRZWrlyJs88+G/X19fjzn/+MyZMnY/fu3RgxYoSmbQhEKO3LycnBiy++iMLCQrS1teH111/HZZddhnXr1mHq1KkA/H/PvL/DcL8/h8OBjz/+GP/4xz+8tovy/YWCKL/BiAxGFi1ahJKSkoBlvvrqK4wbNy7kY5hMJq//Z4z12tYTJWWUoLR9QO96qq3HihUrcNttt8FqtXptv+uuu9z/XVBQgBEjRmDcuHHYsWMHxo4dq2jf/tC7fTfffLP7vwsKCjBu3DgMHToUH374Ya+gS81+1cDrO+zo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\n",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "from kan import *\n",
    "import numpy as np\n",
    "import torch\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "\n",
    "datasets = []\n",
    "\n",
    "n_peak = 5\n",
    "n_num_per_peak = 100\n",
    "n_sample = n_peak * n_num_per_peak\n",
    "\n",
    "x_grid = torch.linspace(-1,1,steps=n_sample)\n",
    "\n",
    "x_centers = 2/n_peak * (np.arange(n_peak) - n_peak/2+0.5)\n",
    "\n",
    "x_sample = torch.stack([torch.linspace(-1/n_peak,1/n_peak,steps=n_num_per_peak)+center for center in x_centers]).reshape(-1,)\n",
    "\n",
    "\n",
    "y = 0.\n",
    "for center in x_centers:\n",
    "    y += torch.exp(-(x_grid-center)**2*300)\n",
    "    \n",
    "y_sample = 0.\n",
    "for center in x_centers:\n",
    "    y_sample += torch.exp(-(x_sample-center)**2*300)\n",
    "    \n",
    "\n",
    "plt.plot(x_grid.detach().numpy(), y.detach().numpy())\n",
    "plt.scatter(x_sample.detach().numpy(), y_sample.detach().numpy())"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "19477c89",
   "metadata": {},
   "source": [
    "Sequentially prensenting different peaks to KAN"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "831a9456",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1500x200 with 5 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.subplots(1, 5, figsize=(15, 2))\n",
    "plt.subplots_adjust(wspace=0, hspace=0)\n",
    "\n",
    "for i in range(1,6):\n",
    "    plt.subplot(1,5,i)\n",
    "    group_id = i - 1\n",
    "    plt.plot(x_grid.detach().numpy(), y.detach().numpy(), color='black', alpha=0.1)\n",
    "    plt.scatter(x_sample[group_id*n_num_per_peak:(group_id+1)*n_num_per_peak].detach().numpy(), y_sample[group_id*n_num_per_peak:(group_id+1)*n_num_per_peak].detach().numpy(), color=\"black\", s=2)\n",
    "    plt.xlim(-1,1)\n",
    "    plt.ylim(-1,2)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "3e487a84",
   "metadata": {},
   "source": [
    "Training KAN"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "11a1d129",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "train loss: 4.00e-06 | test loss: 4.00e-06 | reg: 2.35e+00 : 100%|█| 100/100 [00:03<00:00, 32.00it/s\n",
      "train loss: 4.01e-06 | test loss: 4.01e-06 | reg: 2.35e+00 : 100%|█| 100/100 [00:02<00:00, 39.46it/s\n",
      "train loss: 3.99e-06 | test loss: 3.99e-06 | reg: 2.35e+00 : 100%|█| 100/100 [00:02<00:00, 34.10it/s\n",
      "train loss: 3.99e-06 | test loss: 3.99e-06 | reg: 2.35e+00 : 100%|█| 100/100 [00:02<00:00, 38.86it/s\n",
      "train loss: 4.00e-06 | test loss: 4.00e-06 | reg: 2.35e+00 : 100%|█| 100/100 [00:02<00:00, 38.20it/s\n"
     ]
    }
   ],
   "source": [
    "ys = []\n",
    "\n",
    "# setting bias_trainable=False, sp_trainable=False, sb_trainable=False is important.\n",
    "# otherwise KAN will have random scaling and shift for samples in previous stages\n",
    "\n",
    "model = KAN(width=[1,1], grid=200, k=3, noise_scale=0.1, sp_trainable=False, sb_trainable=False)\n",
    "\n",
    "for group_id in range(n_peak):\n",
    "    dataset = {}\n",
    "    dataset['train_input'] = x_sample[group_id*n_num_per_peak:(group_id+1)*n_num_per_peak][:,None]\n",
    "    dataset['train_label'] = y_sample[group_id*n_num_per_peak:(group_id+1)*n_num_per_peak][:,None]\n",
    "    dataset['test_input'] = x_sample[group_id*n_num_per_peak:(group_id+1)*n_num_per_peak][:,None]\n",
    "    dataset['test_label'] = y_sample[group_id*n_num_per_peak:(group_id+1)*n_num_per_peak][:,None]\n",
    "    model.fit(dataset, opt = 'LBFGS', steps=100, update_grid=False);\n",
    "    y_pred = model(x_grid[:,None])\n",
    "    ys.append(y_pred.detach().numpy()[:,0])"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "dbb9a1b7",
   "metadata": {},
   "source": [
    "Prediction of KAN after each stage"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "12379f4a",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAABMcAAADLCAYAAABqHvQ/AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjYuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8o6BhiAAAACXBIWXMAAA9hAAAPYQGoP6dpAABsjUlEQVR4nO3dd3hUVfoH8O9kMpkklEAIvYuAICWEDlKkK1WRolQVFUXUta2s/hTXggXRxYKCgjSlg7CggFKVlkDoEIqBhDTSE9Jn5vz+yN6bSZ96507m+3kenl2TmcmZM/c97533nnOPRgghQERERERERERE5IG8XN0AIiIiIiIiIiIiV2FxjIiIiIiIiIiIPBaLY0RERERERERE5LFYHCMiIiIiIiIiIo/F4hgREREREREREXksFseIiIiIiIiIiMhjsThGREREREREREQei8UxIiIiIiIiIiLyWCyOERERERERERGRx2JxjIiIiIiIiIiIPJZTi2MLFixA9+7dUaNGDdSrVw/jxo1DRESEM/8kEVmI8UmkboxRIvVifBKpG2OUiKzl1OLYwYMHMWfOHBw7dgx79+6FwWDAsGHDkJWV5cw/S0QWYHwSqRtjlEi9GJ9E6sYYJSJraYQQQqk/lpiYiHr16uHgwYPo37+/Un+WiCzA+CRSN8YokXoxPonUjTFKRJXxVvKPpaenAwACAwPL/H1eXh7y8vLk/zaZTEhJSUGdOnWg0WgUaSORp7p16xYAwMfHBxkZGWU+pmSMGo1GREdH495774VWq1WknUSeqrIYZXwSuQ5zKJG6MYcSVS1CCGRmZqJRo0bw8nLMgkjFZo4JITB27Fikpqbi8OHDZT5m/vz5ePfdd5VoDhERERERERERuano6Gg0adLEIa+lWHFszpw52LlzJ/78889yG1+yYp+eno5mzZohOjoaNWvWVKKZRB7plVdewZ49e/Dbb7+hcePG5T6uZIzGxsaiZ8+ejFEiJ7MkRhmfRK7BHEqkbsyhRFVPRkYGmjZtirS0NAQEBDjkNRVZVjl37lxs374dhw4dqrCqp9frodfrS/28Zs2aHJSInGTu3Ln47bffcOjQIbRs2dKm12CMEjmPvTHK+CRyHuZQInVjDiWq2hx5+y2nFseEEJg7dy62bt2KAwcO2HzSQESOx/gkUjfGKJF6MT6J1I0xSkTWcmpxbM6cOfjpp5/wyy+/oEaNGoiPjwcABAQEwM/Pz5l/mogqwfgkUjfGKJF6MT6J1I0xSkTWcuo9x8qb4rZixQrMnDmz0udnZGQgICAA6enpnM5K5GD2xidQuPNP06ZNGaNETmBvjDI+iZyHOZRI3ZhDiao2Z9SKnL6skojUifFJpG6MUSL1YnwSqRtjlIis5eXqBhAREREREREREbkKi2NEREREREREROSxWBwjIiIiIiIiIiKPxeIYERERERERERF5LBbHiIiIiIiIiIjIY7E4RkREREREREREHovFMSIiIiIiIiIi8lgsjhERERERERERkcdicYyIiIiIiIiIiDwWi2NEREREREREROSxWBwjIiIiIiIiIiKPxeIYERERERERERF5LBbHiIiIiIiIiIjIY7E4RkREREREREREHovFMSIiIiIiIiIi8lgsjhERERERERERkcdicYyIbPbLL7+4uglEVI7k5GRXN4GIKsAcSqRezKFEnofFMSKymslkwrx58/D888+7uilEVIaLFy9i9OjRrm4GEZXBZDLhX//6F3MokUpdunSJOZTIA3m7ugFE5F6ysrIwffp0bNmyxdVNIaIy7NmzBxMmTEBGRoarm0JEJWRnZ2PatGnMoUQq9ccff2D8+PFIT093dVOISGGcOUZEFouJiUH//v2xZcsW+Pj44IsvvnB1k4jIzJIlS/Dggw8iIyMD3bp1c3VziMhMbGwscyiRin377bcYPnw40tPT0bVrV1c3h4gUxuIYEVnk1KlT6NGjB06dOoWgoCD5yhoRuZ7BYMCLL76I5557DkajETNmzMD69etd3Swi+h8ph548eZI5lEhlDAYD5s6di2effRZGoxFTpkzBhg0bXN0sIlIYi2NEVKktW7agX79+iI2NRfv27XH8+HHcd999rm4WEQHIyMjAmDFjsHjxYgDAggULsGLFCvj4+Li4ZUQEANu2bUO/fv0QExODdu3aMYcSqUhaWhpGjhyJr776CgDw4YcfYvXq1cyhRB6I9xwjonIJIfDxxx9j3rx5AIDhw4dj/fr1CAgIcHHLiAgAbty4gdGjR+P8+fPw8/PD6tWrORuFSCWEEPj000/xxhtvQAiBYcOGYcOGDcyhRCpx9epVjB49GhEREfD398eaNWvw0EMPubpZROQiLI4RUZny8vLw9NNPY9WqVQCAuXPnYtGiRfD25rBBpAaHDx/G+PHjkZiYiIYNG2LHjh28RwqRSuTl5WH27Nn48ccfAQBz5szBF198wRxKpBL79u3DI488gtTUVDRt2hTbt29HcHCwq5tFRC7EZZVEVEpCQgIGDx6MVatWQavV4uuvv8bixYt5Uk+kEt9//z0GDx6MxMREdOnSBSdOnGBhjEgl4uPjcf/99+PHH3+El5cXvvzyS3z11VfMoUQq8d1332H48OFITU1Fz549ceLECRbGiIgzx4iouPDwcIwdOxbR0dEICAjA+vXrMXz4cFc3i4hQeNPgl19+GV9++SUAYOLEiVixYgX8/f1d3DIiAgpvvD927FjcunULtWrVwvr16zFs2DBXN4uIUDqHTpkyBd9//z18fX1d3DIiUgPOHCMi2YYNG9C3b19ER0ejTZs2OH78OAtjRCqRkpKCBx54QD6pf//997Fu3ToWxohUYv369bjvvvtw69Yt3HPPPThx4gQLY0QqId14X8qhH3zwAVavXs3CGBHJOHOMiGAymfD222/jgw8+AACMGDECP//8M2rVquXahhERAODSpUsYM2YMrl27hmrVqmHNmjUYN26cq5tFRCidQx944AH8/PPPvPE+kUpcu3YNo0aN4o33iahCLI4RebjMzExMmzYNv/zyCwDg1VdfxUcffQStVuvilhERAOzatQuTJ09GZmYmmjdvju3bt6NTp06ubhYRoXQOfe2117BgwQLmUCKV2L17NyZPnoy0tDQ0adIE27dvR5cuXVzdLCJSIRbHiDzY33//jTFjxuDChQvQ6/VYtmwZpk2b5upmEREAIQQWLlyIf/7znxBCoH///ti0aRPq1q3r6qYREYDIyEiMGTMG58+fZw4lUhkph77xxhswmUzo1asXtm7digYNGri6aUSkUiyOEXmoffv2YcKECUhJSUHDhg2xdetW9OzZ09XNIiIAubm5ePrpp7F69WoAwNNPP40vv/wSPj4+Lm4ZEQHAgQMH8MgjjyA5OZk5lEhlsrOzMWvWLPz8888AgCeffBJff/019Hq9i1tGRGrGG/ITeRghBL766isMGzYMKSkp6N69O8LCwnhST6QSt27dwoABA7B69WpotVp89dVX+Pbbb1kYI1IBIQSWLFmCoUOHIjk5Gd26dUNoaChzKJFK3Lx5E3379sXPP/8Mb29vfPPNN1i2bBkLY0RUKc4cI/IgeXl5mDt3LpYt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mBNpNBo0bNgQkZGRiIyMRIsWLeTfpaSk4Pjx43IxLDQ0FAaDodjz69Wrh8GDB2Po0KEYOnQomjRpovA7ICIiIiIiIiKq2lgcc7KQkBBERkbiu+++Q0REBI4dO4Zjx44hIiKi1GObNGmCAQMGoH///ujfvz/atm1r133KiIiIiIiIiIioYiyOOVmPHj2wefNmrF+/HuvXry/2u9atW6Nfv35yMaxFixYshhERERERERERKYjFMSd76qmnsGXLFly+fBk9evRAr1690KtXL/Ts2RN16tRxdfOIiIiIiIiIiDwai2NOVrt2bRw7dszVzSAiIiIiIiIiojJ4uboBRERERERERERErsLiGBEREREREREReSwWx4iIiIiIiIiIyGOxOEZERERERERERB6LxTEiIiIiIiIiIvJYLI4REREREREREZHHYnGMiIiIiIiIiIg8FotjRERERERERETksVgcIyIiIiIiIiIij8XiGBEREREREREReSwWx4iIiIiIiIiIyGOxOEZERERERERERB6LxTEiIiIiIiIiIvJYLI4REREREREREZHHYnGMiIiIiIiIiIg8FotjRERERERERETksVgcIyIiIiIiIiIij8XiGBEREREREREReSwWx4iIiIiIiIiIyGOxOEZERERERERERB6LxTEiIiIiIiIiIvJYLI4REREREREREZHHYnGMiIiIiIiIiIg8llOLYx988AH69OkDf39/1KpVy5l/ioisxPgkUi/GJ5G6MUaJ1I0xSkTWcmpxLD8/HxMmTMCzzz7rzD9DRDZgfBKpF+OTSN0Yo0TqxhglImt5O/PF3333XQDAjz/+6Mw/Q0Q2YHwSqRfjk0jdGKNE6sYYJSJrObU4Zq28vDzk5eXJ/52eng4AyMjIcFWTiKq8nJwcAJbFWckYjY2Ntfi5RGQ9xieRujFGidTN0hhlfBK5Fyk2hRAOe01VFccWLFggV/nNNW3a1AWtIfIsAQEBNj+XMUrkXIxPInVjjBKpm60xyvgkUrfk5GS7crA5q4tj8+fPL7OAZS40NBTdunWzujHz5s3Dyy+/LP93WloamjdvjqioKIe9YTXKyMhA06ZNER0djZo1a7q6OU7jKe8TcN17XbBgAT766KMKH7N//36EhITI/7127VrMmzcPUVFRlb5+yatqt27dQu/evXHu3Dk0a9bM9oarnKccu3yf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\n",
      "text/plain": [
       "<Figure size 1500x200 with 5 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.subplots(1, 5, figsize=(15, 2))\n",
    "plt.subplots_adjust(wspace=0, hspace=0)\n",
    "\n",
    "for i in range(1,6):\n",
    "    plt.subplot(1,5,i)\n",
    "    group_id = i - 1\n",
    "    plt.plot(x_grid.detach().numpy(), y.detach().numpy(), color='black', alpha=0.1)\n",
    "    plt.plot(x_grid.detach().numpy(), ys[i-1], color='black')\n",
    "    plt.xlim(-1,1)\n",
    "    plt.ylim(-1,2)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "d2002726",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.9.7"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
